Exercise 13: Cross-sample scRNAseq differential state analysis
Getting started
The aim of this exercise is to practice and push further what has been done during the hands-on session. We will be working with the same dataset, namely a single-cell RNA-seq of mouse cortex injected with LPS or with a vehicle treatment (see Crowell et al.). You can download the data in SingleCellExperiment (SCE) format here, or with:
The code used during the hands-on session is available in the course github repo. An example of a different workflow on this very dataset, from pre-processing to clustering and differential state analysis, is available here.
Loading necessary libraries
suppressPackageStartupMessages({
library(SingleCellExperiment)
library(scran) # sc analysis
library(scater) # sc QC and plotting
library(batchelor) # batch correction methods
library(scDblFinder) # doublet detection
# library(sctransform) # variance-stabilizing transformation (optional)
library(muscat) # differential expression analysis
library(BiocParallel) # handling multi-threading
library(BiocNeighbors) # specifying params for kNN
library(igraph) # for manual graph clustering
library(sechm) # plotting
library(ggplot2) # plotting
library(patchwork) # to combine
library(grid)
library(UpSetR)
library("edgeR")
library(dplyr)
})Warning in checkDepPackageVersion(dep_pkg = "TMB"): Package version inconsistency detected.
glmmTMB was built with TMB version 1.9.6
Current TMB version is 1.9.10
Please re-install glmmTMB from source or restore original 'TMB' package (see '?reinstalling' for more information)
Question 1: Per-celltype DS analysis and comparison
The goal of the exercise is to try to disentangle celltype-specific responses to the treatment. For the first part, follow the following steps:
1. Repeat the differential state analysis as we did in the course using muscat (or take your saved output from the course). https://bioconductor.org/packages/devel/bioc/vignettes/muscat/inst/doc/analysis.html
WT LPS
LC016_WT 1730 0
LC017_LPS 0 1027
LC019_WT 1064 0
LC020_LPS 0 1468
LC022_WT 1806 0
LC023_LPS 0 1546
LC025_WT 1259 0
LC026_LPS 0 2247
QC
[1] "ENSMUSG00000064341.mt-Nd1" "ENSMUSG00000064345.mt-Nd2"
[3] "ENSMUSG00000064351.mt-Co1" "ENSMUSG00000064354.mt-Co2"
[5] "ENSMUSG00000064356.mt-Atp8" "ENSMUSG00000064357.mt-Atp6"
# get QC metrics:
sce <- addPerCellQC(sce, subsets=list(Mt=mito), percent.top=c(5,10))
sce <- addPerFeatureQC(sce)
# we plot some of the metrics
qc <- as.data.frame(colData(sce))
ggplot(qc, aes(subsets_Mt_percent)) + geom_histogram() + facet_wrap(~sample_id)`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
# we set thresholds on the library sizes and detection rate:
sce$qc.out <- isOutlier(log(sce$sum),nmads=3,batch=sce$sample_id) |
isOutlier(log(sce$detected),nmads=3,batch=sce$sample_id)
# a fancier job would be accomplished by https://github.com/wmacnair/SampleQC
table(sce$qc.out)
FALSE TRUE
12115 32
# get rid of seldom detected genes
sce <- sce[rowData(sce)$detected>=4,]
# we flag doublets: doublets are droplets that capture more than one cell and this might be a problem when it captures more than one cell-type
sce <- scDblFinder(sce, samples="sample_id", BPPARAM=MulticoreParam(6))
table(sce$scDblFinder.class)
singlet doublet
11484 663
Normalization and reduction
# (fast) standard log-normalization
sce <- logNormCounts(sce)
# get high-variable genes (normally we'd take 3000, here we'll go skim for speed)
hvg <- getTopHVGs(sce, n=1000)
# alternative: variance-stabilizing transformation
# vst <- suppressWarnings(sctransform::vst(counts(sce)))
# logcounts(sce) <- vst$y
# # get highly-variable genes
# hvg <- row.names(sce)[order(vst$gene_attr$residual_variance,
# decreasing=TRUE)[1:1000]]
# run PCA
sce <- runPCA(sce, ncomponents=50, subset_row=hvg)
#How many componentes do you take? before the used the elbo, but it is not a good way to proceed.
# check the variance explained by the PCs:
pc.var <- attr(reducedDim(sce),"percentVar")
plot(pc.var, xlab="PCs", ylab="% variance explained")# restrict to the first 20 components:
reducedDim(sce) <- reducedDim(sce)[,1:20]
# run and plot 2d projections based on the PCA
# to improve performance, use Annoy kNN approximation:
sce <- runTSNE(sce, dimred="PCA", BNPARAM=AnnoyParam())
sce <- runUMAP(sce, dimred="PCA", n_neighbors=30, BNPARAM=AnnoyParam())
# you can compare the 2d embeddings:
# sleepwalk::sleepwalk( as.list(reducedDims(sce)[c("TSNE","UMAP")]),
# featureMatrices=reducedDims(sce)[["PCA"]] )
#it is an impossible task to do not introduce distorsions in these methods of dimensionality reduction. Because to perserve the neighbours of one cell, you need to disturb the others.
# plot by doublet score
plotUMAP(sce, colour_by="scDblFinder.score") +
plotTSNE(sce, colour_by="scDblFinder.score") +
plot_layout(guides = "collect")Batch correction
# check mixing:
plotTSNE(sce, colour_by="group_id") +
plotTSNE(sce, colour_by="sample_id") +
plot_layout(guides = "collect")Clustering
# BiocNeighbors
g <- buildKNNGraph(sce, BNPARAM=AnnoyParam(), use.dimred="PCA", k=30)
sce$cluster <- as.factor(cluster_leiden(g, objective_function="modularity",
n_iterations=20)$membership)
table(sce$cluster)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
305 997 274 982 206 1247 946 301 1058 709 870 221 725 253 708 95
17 18 19 20 21
635 577 107 135 108
# we could play with the `resolution_parameter` of `cluster_leiden`
# to decide on the granularity
plotTSNE(sce, colour_by="cluster", text_by="cluster") +
plotUMAP(sce, colour_by="cluster", text_by="cluster")Clustering abundances across samples
ca <- table(cluster=sce$cluster, sample=sce$sample_id)
ggplot(as.data.frame(ca), aes(reorder(sample), cluster, fill=Freq)) +
geom_tile() + geom_text(aes(label=Freq)) +
scale_fill_viridis_c()Cluster annotation -De-novo marker identification
-Known markers
genes <- list(
astrocytes = c("Aqp4", "Gfap", "Fgfr3","Dio2"),
endothelial = c("Cldn5","Nostrin","Flt1"),
microglia = c("C1qb","Tyrobp","P2ry12", "Csf1r"),
neuronal = c("Snap25", "Stmn2", "Syn1", "Rbfox3"),
excNeuron = c("Slc17a7","Camk2a","Grin2b","Fezf2"),
inhNeuron = c("Gad1","Lhx6","Adarb2"),
oligodendro = c("Opalin","Plp1","Mag","Mog"),
OPC = c("Pdgfra","Sox6","Bcan")
)
# since the row.names of the object have also the ensembl id, we find the matching row names for each gene:
km <- lapply(genes, FUN=function(g) grep(paste0(g, "$", collapse="|"), rownames(sce), value=TRUE))-Pseudo-bulk aggregation
# muscat
# mean logcounts by cluster:
pb <- aggregateData(sce, "logcounts", by=c("cluster"), fun="mean")
assayNames(pb) <- "logcounts"
assays(pb)$propOfMax <- exp(logcounts(pb))/rowMaxs(exp(logcounts(pb)))
rowData(pb)$marker4 <- NA
rowData(pb)[unlist(km),"marker4"] <- rep(names(km),lengths(km))
sechm(pb, c(unlist(km)), assayName="logcounts", gaps_row="marker4",
show_colnames=TRUE, do.scale=TRUE, breaks=1, row_title_rot=0) +
sechm(pb, c(unlist(km)), assayName = "propOfMax", show_colnames=TRUE,
do.scale=FALSE, hmcols=viridis::viridis(100),
row_names_gp=gpar(fontsize=9))# heatmap for the de-novo markers:
sechm(pb, markers, assayName = "propOfMax", show_colnames=TRUE,
do.scale=FALSE, hmcols=viridis::viridis(100),
row_names_gp=gpar(fontsize=9))# we get rid of the unspecific neuronal markers:
km2 <- km[names(km)!="neuronal"]
# we extract the pseudo-bulk counts of the markers for each cluster
mat <- assay(pb)[unlist(km2),]
# we aggregate across markers of the same type
mat <- aggregate(t(scale(t(mat))),
by=list(type=rep(names(km2), lengths(km2))),
FUN=sum)
# for each column (cluster), we select the row (cell type) which has the maximum aggregated value
cl2 <- mat[,1][apply(mat[,-1], 2, FUN=which.max)]
# we convert the cells' cluster labels to cell type labels:
sce$cluster2 <- cl2[sce$cluster]
table(sce$cluster, sce$cluster2)
astrocytes endothelial excNeuron inhNeuron microglia oligodendro OPC
1 0 0 305 0 0 0 0
2 0 0 997 0 0 0 0
3 0 0 0 0 274 0 0
4 0 0 982 0 0 0 0
5 0 0 206 0 0 0 0
6 0 0 1247 0 0 0 0
7 946 0 0 0 0 0 0
8 0 0 0 301 0 0 0
9 0 0 0 1058 0 0 0
10 0 0 709 0 0 0 0
11 0 0 0 0 0 870 0
12 0 221 0 0 0 0 0
13 0 0 0 0 0 725 0
14 0 253 0 0 0 0 0
15 708 0 0 0 0 0 0
16 0 95 0 0 0 0 0
17 0 0 0 635 0 0 0
18 0 0 0 0 0 0 577
19 0 0 0 0 0 0 107
20 0 135 0 0 0 0 0
21 0 108 0 0 0 0 0
# we aggregate again to pseudo-bulk using the new clusters
pb <- aggregateData(sce, "logcounts", by=c("cluster2"), fun="mean")
assayNames(pb) <- "logcounts"
# and we plot again the expression of the markers as a sanity check
rowData(pb)$marker4 <- NA
rowData(pb)[unlist(km),"marker4"] <- rep(names(km),lengths(km))
sechm(pb, c(unlist(km)), assayName="logcounts", gaps_row="marker4",
show_colnames=TRUE, do.scale=TRUE, breaks=1, row_title_rot=0)Differential state analysis
# we aggregate by cluster x sample to perform pseudo-bulk differential state analysis
sce <- muscat::prepSCE(sce, kid="cluster2", sid = "sample_id",
gid = "group_id")
pb <- aggregateData(sce)
pbMDS(pb)
|
| | 0%
|
|========== | 14%
|
|==================== | 29%
|
|============================== | 43%
|
|======================================== | 57%
|
|================================================== | 71%
|
|============================================================ | 86%
|
|======================================================================| 100%
res2 <- dplyr::bind_rows(res$table[[1]])
# volcano plots
ggplot(res2, aes(logFC, -log10(p_adj.loc), colour=p_adj.loc<0.05)) + geom_point() + facet_wrap(~cluster_id)# we extract all differentially-expressed genes:
degs <- unique(res2[res2$p_adj.loc<0.05,"gene"])
# we flatten the pb object (putting all cell types in the same assay) and calculate foldchanges
pb2 <- pbFlatten(pb)
# we add a logFC assay:
pb2 <- sechm::log2FC(pb2, fromAssay="logcpm", controls=pb2$group_id=="WT", by=pb2$cluster_id)
# we reorder
pb2 <- pb2[,order(pb2$cluster_id, pb2$group_id)]
# we plot a heatmap of the logFC of the top 200 genes across all cell types
sechm(pb2, head(degs,200), assayName="log2FC", gaps_at="cluster_id",
column_title_gp=gpar(fontsize=9))
|
| | 0%
|
|========== | 14%
|
|==================== | 29%
|
|============================== | 43%
|
|======================================== | 57%
|
|================================================== | 71%
|
|============================================================ | 86%
|
|======================================================================| 100%
res2 <- dplyr::bind_rows(res$table[[1]])
# volcano plots
ggplot(res2, aes(logFC, -log10(p_adj.loc), colour=p_adj.loc<0.05)) + geom_point() + facet_wrap(~cluster_id)2. Compare the differentially-expressed genes across the different cell types, for instance using UpSet plots.
res2$DE <- res2$p_adj.loc<0.05
degs <- as.data.frame(degs)
degs$astrocytes <- ifelse(degs$degs %in% res2$gene[res2$cluster_id == "astrocytes" & res2$DE == TRUE], 1, 0)
degs$endothelial <- ifelse(degs$degs %in% res2$gene[res2$cluster_id == "endothelial" & res2$DE == TRUE], 1, 0)
degs$excNeuron <- ifelse(degs$degs %in% res2$gene[res2$cluster_id == "excNeuron" & res2$DE == TRUE], 1, 0)
degs$inhNeuron <- ifelse(degs$degs %in% res2$gene[res2$cluster_id == "inhNeuron" & res2$DE == TRUE], 1, 0)
degs$microglia <- ifelse(degs$degs %in% res2$gene[res2$cluster_id == "microglia" & res2$DE == TRUE], 1, 0)
degs$oligodendro <- ifelse(degs$degs %in% res2$gene[res2$cluster_id == "oligodendro" & res2$DE == TRUE], 1, 0)
degs$OPC <- ifelse(degs$degs %in% res2$gene[res2$cluster_id == "OPC" & res2$DE == TRUE], 1, 0)
upset(degs[-1], sets = colnames(degs[-1]), order.by = "freq")In the UpSet plot we can observe the genes the amount of genes that were DE for each cell type. Astrocytes and endothelial cells are the cell types with highest DE genes.
3. Choose one cell type, find some genes that are significant in only that cell type, and plot their pseudo-bulk profile across the dataset (e.g. with muscat::pbHeatmap, or flattened heatmaps using SEtools). Are they truly cell-type specific?
rownames(degs) <- degs$degs
degs <- degs[-1]
selected_rows <- which(degs$excNeuron == TRUE & rowSums(degs[, -which(names(degs) == "excNeuron")]) == 0)
DE_only_excNeuron <- rownames(degs[selected_rows, , drop = FALSE])
head(DE_only_excNeuron)[1] "ENSMUSG00000026344.Lypd1" "ENSMUSG00000048482.Bdnf"
[3] "ENSMUSG00000074923.Pak6" "ENSMUSG00000027624.Epb41l1"
[5] "ENSMUSG00000027560.Dok5" "ENSMUSG00000042035.Igsf3"
We choose these 5 genes only DE in excitatory neurons.
# we flatten the pb object (putting all cell types in the same assay) and calculate foldchanges
pb2 <- pbFlatten(pb)
# we add a logFC assay:
pb2 <- sechm::log2FC(pb2, fromAssay="logcpm", controls=pb2$group_id=="WT", by=pb2$cluster_id)
# we reorder
pb2 <- pb2[,order(pb2$cluster_id, pb2$group_id)]
sechm(pb2, head(DE_only_excNeuron), assayName="log2FC", gaps_at="cluster_id",
column_title_gp=gpar(fontsize=5))If they were cell-type specific, we would observe differential expression (up or down-regulated) only for that cluster ID. However we can observe for at least these 5 genes specifically, these genes are not truely cell-type specific as their expression is also differential for other clusters.
Question 2: Global DS analysis
Instead of running the differential expression analysis separately for each cell type, like muscat does, we can also run it for all cell types together. This allows us to use the framework of generalized linear models (GLMs)1 to capture effects in terms of global treatment (i.e. group) effect, and interaction terms capturing the additional effect of the treatment in specific cell types. The second part of the exercise is to try such an approach. More specifically:
1. Build a pseudo-bulk SummarizedExperiment or counts matrix that contains all cell types (e.g. muscat::pbFlatten).
2. Build a model.matrix that captures i) the different cell types (cluster_id), ii) the different treatments (group_id), and iii) their interaction.
- the different cell types (
cluster_id)
cell_types <- pb2$cluster_id
design_cell_types <- model.matrix(~cell_types)
y <- estimateDisp(y,design_cell_types)
#To perform likelihood ratio tests:
fit <- glmFit(y,design_cell_types)
lrt_celltypes <- glmLRT(fit)
topTags(lrt_celltypes)Coefficient: cell_typesOPC
logFC logCPM LR PValue
ENSMUSG00000106379.Lhfpl3 7.529414 9.365999 489.9198 1.483431e-108
ENSMUSG00000062257.Opcml 4.792293 11.212983 487.5685 4.818145e-108
ENSMUSG00000015829.Tnr 6.102887 9.495983 479.4769 2.776974e-106
ENSMUSG00000021614.Vcan 5.281881 6.422884 466.7884 1.601953e-103
ENSMUSG00000029231.Pdgfra 7.298128 7.438284 438.5263 2.265638e-97
ENSMUSG00000033006.Sox10 5.225970 6.373902 365.6405 1.664939e-81
ENSMUSG00000052613.Pcdh15 4.609445 9.405756 335.8573 5.094439e-75
ENSMUSG00000025909.Sntg1 3.972592 8.750445 320.2373 1.285940e-71
ENSMUSG00000034310.Tmem132d 4.583043 7.748040 309.4234 2.916330e-69
ENSMUSG00000050272.Dscam 5.049730 8.762630 303.5403 5.577872e-68
FDR
ENSMUSG00000106379.Lhfpl3 1.318325e-104
ENSMUSG00000062257.Opcml 2.140943e-104
ENSMUSG00000015829.Tnr 8.226322e-103
ENSMUSG00000021614.Vcan 3.559139e-100
ENSMUSG00000029231.Pdgfra 4.026946e-94
ENSMUSG00000033006.Sox10 2.466052e-78
ENSMUSG00000052613.Pcdh15 6.467754e-72
ENSMUSG00000025909.Sntg1 1.428519e-68
ENSMUSG00000034310.Tmem132d 2.879714e-66
ENSMUSG00000050272.Dscam 4.957054e-65
- the different treatments (
group_id)
group <- pb2$group_id
design <- model.matrix(~group)
y <- estimateDisp(y,design)
#To perform likelihood ratio tests:
fit <- glmFit(y,design)
lrt_treatments <- glmLRT(fit,coef=2)
topTags(lrt_treatments)Coefficient: groupLPS
logFC logCPM LR PValue
ENSMUSG00000034855.Cxcl10 9.539243 8.427407 114.60616 9.598753e-27
ENSMUSG00000004040.Stat3 2.425182 7.729863 95.25778 1.671400e-22
ENSMUSG00000040026.Saa3 9.007182 9.714243 87.77906 7.318968e-21
ENSMUSG00000053113.Socs3 5.568103 6.635827 78.35890 8.592158e-19
ENSMUSG00000022094.Slc39a14 2.779063 6.927302 77.76305 1.161732e-18
ENSMUSG00000035673.Sbno2 3.590433 6.994296 77.29720 1.470747e-18
ENSMUSG00000051439.Cd14 7.310838 7.659779 74.92313 4.894032e-18
ENSMUSG00000029380.Cxcl1 8.624937 8.183750 68.92396 1.023339e-16
ENSMUSG00000031762.Mt2 3.650698 10.720730 63.96202 1.268410e-15
ENSMUSG00000026104.Stat1 2.725879 6.277276 62.11739 3.235811e-15
FDR
ENSMUSG00000034855.Cxcl10 8.530412e-23
ENSMUSG00000004040.Stat3 7.426868e-19
ENSMUSG00000040026.Saa3 2.168122e-17
ENSMUSG00000053113.Socs3 1.908963e-15
ENSMUSG00000022094.Slc39a14 2.064863e-15
ENSMUSG00000035673.Sbno2 2.178421e-15
ENSMUSG00000051439.Cd14 6.213323e-15
ENSMUSG00000029380.Cxcl1 1.136801e-13
ENSMUSG00000031762.Mt2 1.252484e-12
ENSMUSG00000026104.Stat1 2.875666e-12
- their interaction
3. Run differential expression analysis (e.g. using edgeR), and extract the genes with a significant global treatment effect, and the genes with a significant cell type effect (interaction term) for the cell type you selected in #3.
y <- estimateDisp(y,design_interaction)
#To perform likelihood ratio tests:
fit <- glmFit(y,design_interaction)
lrt_global <- glmLRT(fit,coef=8)
topTags(lrt_global, n= Inf, p.value=0.05, adjust.method = "bonferroni")Coefficient: groupLPS
logFC logCPM LR PValue
ENSMUSG00000035673.Sbno2 5.1729151 6.843842 267.72817 3.548567e-60
ENSMUSG00000024998.Plce1 3.2929565 6.953755 147.44449 6.274287e-34
ENSMUSG00000022094.Slc39a14 4.0473035 6.776529 146.83608 8.522470e-34
ENSMUSG00000052560.Cpne8 4.5059983 7.032948 143.83476 3.861158e-33
ENSMUSG00000021091.Serpina3n 4.3077971 5.966274 133.58676 6.727747e-31
ENSMUSG00000021453.Gadd45g 3.0948659 6.415887 125.91985 3.201565e-29
ENSMUSG00000022146.Osmr 6.7378106 5.942096 124.28209 7.307954e-29
ENSMUSG00000018899.Irf1 4.4230529 6.776183 118.57151 1.299826e-27
ENSMUSG00000004040.Stat3 2.5675479 7.649794 116.23077 4.230867e-27
ENSMUSG00000034855.Cxcl10 11.3882344 8.266486 106.23511 6.548597e-25
ENSMUSG00000040033.Stat2 2.9864557 6.508861 94.22756 2.812572e-22
ENSMUSG00000054072.Iigp1 9.3768775 7.550808 91.91449 9.050407e-22
ENSMUSG00000105504.Gbp5 7.6759289 6.656298 91.82127 9.486927e-22
ENSMUSG00000054226.Tprkb -2.2107000 6.062998 91.50591 1.112592e-21
ENSMUSG00000053113.Socs3 6.6237545 6.185619 90.92245 1.494146e-21
ENSMUSG00000040430.Pitpnc1 -2.2430528 8.570368 87.65532 7.791470e-21
ENSMUSG00000036644.Tbc1d9b 2.1332441 6.703553 86.15939 1.660016e-20
ENSMUSG00000026131.Dst 1.8526821 8.725271 80.38537 3.080669e-19
ENSMUSG00000036661.Dennd3 4.2137550 5.756880 76.66047 2.030270e-18
ENSMUSG00000026104.Stat1 3.2738561 5.961661 76.00518 2.829220e-18
ENSMUSG00000024501.Dpysl3 4.1754574 5.705460 75.38107 3.880939e-18
ENSMUSG00000070366.Plpp4 3.1058017 5.908109 73.32102 1.101881e-17
ENSMUSG00000020932.Gfap 3.7484434 6.915936 71.03830 3.503569e-17
ENSMUSG00000069874.Irgm2 4.8411519 5.880912 69.07934 9.458075e-17
ENSMUSG00000037876.Jmjd1c 1.6098640 8.605151 67.04211 2.657685e-16
ENSMUSG00000029561.Oasl2 5.3932474 6.459954 65.83481 4.903453e-16
ENSMUSG00000034640.Tiparp 2.4702860 7.481458 65.65985 5.358643e-16
ENSMUSG00000033720.Sfxn5 -1.6946183 7.439145 63.47117 1.627314e-15
ENSMUSG00000051439.Cd14 5.9273020 7.090845 63.15097 1.914552e-15
ENSMUSG00000029380.Cxcl1 6.6734880 8.056475 61.90044 3.612692e-15
ENSMUSG00000035385.Ccl2 9.6843343 8.489577 61.61804 4.169809e-15
ENSMUSG00000026822.Lcn2 6.8582878 9.524705 61.14630 5.298734e-15
ENSMUSG00000030759.Far1 2.0557405 6.510621 61.01511 5.663833e-15
ENSMUSG00000055320.Tead1 1.8025851 7.170354 60.10526 8.991771e-15
ENSMUSG00000024339.Tap2 2.7207085 5.816186 59.84987 1.023763e-14
ENSMUSG00000039037.St6galnac5 -2.1699756 7.893553 59.54448 1.195609e-14
ENSMUSG00000052837.Junb 2.6280957 6.600337 58.61032 1.922056e-14
ENSMUSG00000084984.Far1os 2.3287569 5.650893 58.19101 2.378637e-14
ENSMUSG00000026565.Pou2f1 -1.8786594 6.486639 57.39351 3.567827e-14
ENSMUSG00000037458.Azin1 1.6627951 6.868663 57.21082 3.915115e-14
ENSMUSG00000037405.Icam1 4.7146020 6.806518 55.56434 9.044939e-14
ENSMUSG00000039701.Usp53 2.0543557 6.713912 55.27731 1.046699e-13
ENSMUSG00000020658.Efr3b 1.7440615 7.946889 55.22754 1.073542e-13
ENSMUSG00000019841.Rev3l 1.8464575 7.221205 53.35113 2.789512e-13
ENSMUSG00000021360.Gcnt2 3.2567667 6.483870 52.94479 3.430564e-13
ENSMUSG00000029798.Herc6 2.4213107 5.748384 51.89280 5.861491e-13
ENSMUSG00000022681.Ntan1 1.5948257 8.057143 51.82560 6.065567e-13
ENSMUSG00000013150.Gfod2 1.9359046 6.170962 51.64099 6.663570e-13
ENSMUSG00000029313.Aff1 2.0015877 7.252064 50.34591 1.288982e-12
ENSMUSG00000073411.H2-D1 3.1399268 8.714176 49.82401 1.681730e-12
ENSMUSG00000025492.Ifitm3 3.3060207 8.491549 49.58677 1.897894e-12
ENSMUSG00000046768.Rhoj 2.8597159 6.520061 49.42375 2.062332e-12
ENSMUSG00000027737.Slc7a11 1.7659555 6.894238 49.21760 2.290859e-12
ENSMUSG00000030890.Ilk 1.9847062 6.069542 48.11919 4.010818e-12
ENSMUSG00000026640.Plxna2 2.2133927 7.249022 48.03200 4.193186e-12
ENSMUSG00000015243.Abca1 1.7488796 6.623831 47.11696 6.687436e-12
ENSMUSG00000021466.Ptch1 -2.3150984 5.681875 47.09628 6.758374e-12
ENSMUSG00000029722.Agfg2 1.8916096 6.528641 46.37411 9.769810e-12
ENSMUSG00000070056.Mfhas1 1.6967191 6.092999 44.29111 2.829987e-11
ENSMUSG00000025314.Ptprj 1.9852329 8.583821 43.69340 3.840657e-11
ENSMUSG00000020642.Rnf144a 1.6013004 6.376802 43.43945 4.372822e-11
ENSMUSG00000021025.Nfkbia 2.2403730 7.746397 42.08369 8.744964e-11
ENSMUSG00000020941.Map3k14 2.0771625 6.483543 41.81518 1.003217e-10
ENSMUSG00000031565.Fgfr1 1.4188947 6.878895 41.66957 1.080783e-10
ENSMUSG00000058740.Kcnt1 2.0069396 5.526285 41.38658 1.249119e-10
ENSMUSG00000021710.Nln 1.9455532 6.103864 40.90394 1.598983e-10
ENSMUSG00000025006.Sorbs1 1.6381381 7.810800 40.57673 1.890449e-10
ENSMUSG00000038301.Snx10 1.7658588 6.992985 40.11084 2.399542e-10
ENSMUSG00000040624.Plekhg1 1.7772805 7.701047 39.83793 2.759338e-10
ENSMUSG00000038894.Irs2 2.9064074 5.023270 39.46970 3.331900e-10
ENSMUSG00000020354.Sgcd 1.9888926 9.351652 39.35552 3.532531e-10
ENSMUSG00000087259.2610035D17Rik -2.0564503 6.625932 39.21747 3.791322e-10
ENSMUSG00000021684.Pde8b -2.0532880 7.529053 38.90161 4.457132e-10
ENSMUSG00000030199.Etv6 1.9505600 7.544835 38.88917 4.485626e-10
ENSMUSG00000037815.Ctnna1 1.4667957 6.628046 37.20711 1.062257e-09
ENSMUSG00000046718.Bst2 4.6022360 6.743287 37.14268 1.097940e-09
ENSMUSG00000044968.Napepld 2.8377831 6.074994 37.12542 1.107702e-09
ENSMUSG00000040037.Negr1 -1.4885108 9.002609 37.11617 1.112971e-09
ENSMUSG00000065968.Ifitm7 2.9295857 5.357055 36.44833 1.567676e-09
ENSMUSG00000035376.Hacd2 1.3412775 7.239264 35.53733 2.502086e-09
ENSMUSG00000097300.Gm26835 1.9916031 7.180103 35.36980 2.726818e-09
ENSMUSG00000032741.Tpcn1 -1.7728903 5.674891 35.34270 2.765030e-09
ENSMUSG00000020623.Map2k6 -1.8919090 7.036746 35.07604 3.170776e-09
ENSMUSG00000005501.Usp40 1.3598653 6.863377 34.84974 3.561569e-09
ENSMUSG00000048807.Slc35e4 1.8780656 5.670424 34.81804 3.620034e-09
ENSMUSG00000063297.Luzp2 -1.4432306 8.599532 34.75662 3.736066e-09
ENSMUSG00000021895.Arhgef3 2.2970436 6.893204 34.74663 3.755284e-09
ENSMUSG00000060548.Tnfrsf19 -1.4121689 6.045020 34.72610 3.795089e-09
ENSMUSG00000068747.Sort1 1.4066968 7.615520 34.29064 4.746601e-09
ENSMUSG00000043259.Fam13c -2.1089641 6.626677 33.96932 5.598785e-09
ENSMUSG00000039954.Stk32a 2.7742223 6.347293 33.94482 5.669741e-09
ENSMUSG00000030660.Pik3c2a 1.4015119 7.541009 33.93635 5.694471e-09
ENSMUSG00000030077.Chl1 1.6036444 7.025015 33.29824 7.905403e-09
ENSMUSG00000037363.Letm2 1.3855293 6.751451 33.00728 9.181435e-09
ENSMUSG00000021814.Anxa7 1.7616966 6.397993 33.00266 9.203279e-09
ENSMUSG00000085245.Gm11713 -2.1489831 5.883856 32.49681 1.193882e-08
ENSMUSG00000041712.Ubr7 1.6346363 5.735418 32.11747 1.451263e-08
ENSMUSG00000038371.Sbf2 1.4381764 7.990114 32.05065 1.502049e-08
ENSMUSG00000005686.Ampd3 1.8785761 6.196174 31.91514 1.610572e-08
ENSMUSG00000062151.Unc13c -2.7457587 6.619146 31.87602 1.643337e-08
ENSMUSG00000064210.Ano6 1.6677794 7.196286 31.87137 1.647275e-08
ENSMUSG00000047731.Wbp1l 1.7881372 6.071261 31.67987 1.817972e-08
ENSMUSG00000022912.Pros1 2.2423416 5.334382 31.58057 1.913343e-08
ENSMUSG00000003541.Ier3 2.6016673 7.104105 31.45424 2.041959e-08
ENSMUSG00000052942.Glis3 1.5263188 6.815607 31.32184 2.186061e-08
ENSMUSG00000027562.Car2 -1.7740294 7.693394 31.01541 2.559884e-08
ENSMUSG00000070327.Rnf213 1.8623254 6.440391 30.98314 2.602795e-08
ENSMUSG00000031681.Smad1 1.6409273 6.269734 30.72384 2.974877e-08
ENSMUSG00000021709.Erbb2ip 1.4660545 7.610280 30.62157 3.135882e-08
ENSMUSG00000059866.Tnip2 2.4213124 5.907161 29.90048 4.548005e-08
ENSMUSG00000063972.Nr6a1 -1.4696961 7.318119 29.54628 5.459734e-08
ENSMUSG00000020287.Mpg 1.9503523 5.218020 29.53194 5.500286e-08
ENSMUSG00000015850.Adamtsl4 2.9774890 5.992686 29.51646 5.544386e-08
ENSMUSG00000059991.Nptx2 2.2874530 5.614456 29.39452 5.904451e-08
ENSMUSG00000030088.Aldh1l1 1.2623746 5.682379 29.19670 6.539056e-08
ENSMUSG00000041642.Kif21b -2.4566841 5.336615 29.00536 7.217845e-08
ENSMUSG00000030257.Srgap3 -1.3354699 7.669560 28.88251 7.690430e-08
ENSMUSG00000024539.Ptpn2 1.9251490 5.995932 28.79700 8.037570e-08
ENSMUSG00000032656.March3 1.7203887 5.715515 28.60180 8.889940e-08
ENSMUSG00000015501.Hivep2 1.1354385 8.543502 28.08976 1.158173e-07
ENSMUSG00000025545.Clybl -1.2829486 6.435785 28.07496 1.167064e-07
ENSMUSG00000078722.Gm12394 1.7558278 6.390679 27.93572 1.254130e-07
ENSMUSG00000022680.Pdxdc1 1.3419402 7.162566 27.92629 1.260261e-07
ENSMUSG00000038587.Akap12 2.8461743 8.676037 27.81209 1.336881e-07
ENSMUSG00000014592.Camta1 1.1927383 8.616873 27.80892 1.339076e-07
ENSMUSG00000056073.Grik2 -1.4078868 8.733773 27.43307 1.626265e-07
ENSMUSG00000053641.Dennd4a 1.5714847 7.217962 27.42701 1.631363e-07
ENSMUSG00000074505.Fat3 -2.0422414 7.889291 27.33972 1.706691e-07
ENSMUSG00000035133.Arhgap5 -1.0473694 7.357835 27.17423 1.859202e-07
ENSMUSG00000020859.Spag9 -1.0698492 8.122217 27.12089 1.911219e-07
ENSMUSG00000032000.Birc3 3.2864432 5.917810 26.75505 2.309470e-07
ENSMUSG00000024654.Asrgl1 -1.3077134 5.788582 26.73974 2.327842e-07
ENSMUSG00000021133.Susd6 1.3450741 7.547107 26.60217 2.499627e-07
ENSMUSG00000054400.Cklf 1.7807166 5.646605 26.27067 2.967620e-07
ENSMUSG00000061410.Zcchc14 1.5945984 6.119048 25.91868 3.561072e-07
ENSMUSG00000035356.Nfkbiz 2.3816775 5.183770 25.89256 3.609579e-07
ENSMUSG00000020077.Srgn 3.1199949 6.846748 25.85011 3.689833e-07
ENSMUSG00000031762.Mt2 2.5011062 10.724081 24.76253 6.484588e-07
ENSMUSG00000020776.Fbf1 2.2098746 4.722832 24.71348 6.651726e-07
ENSMUSG00000053702.Nebl 1.2693929 8.803484 24.63191 6.939301e-07
ENSMUSG00000006301.Tmbim1 1.7498618 7.680700 24.60635 7.031952e-07
ENSMUSG00000004508.Gab2 1.5701591 7.604450 24.59291 7.081166e-07
ENSMUSG00000014599.Csf1 2.2735783 5.388679 24.35819 7.998577e-07
ENSMUSG00000020262.Adarb1 1.7691825 6.585359 23.97218 9.773759e-07
ENSMUSG00000050965.Prkca 1.3343052 8.858084 23.87788 1.026445e-06
ENSMUSG00000039047.Pigk -1.3171306 7.190760 23.85693 1.037676e-06
ENSMUSG00000030201.Lrp6 1.5047796 6.331592 23.81033 1.063105e-06
ENSMUSG00000008734.Gprc5b -1.2911036 7.049447 23.78842 1.075276e-06
ENSMUSG00000024603.Dctn4 1.0570875 7.304204 23.60034 1.185669e-06
ENSMUSG00000019889.Ptprk 1.7795046 8.503677 23.56163 1.209761e-06
ENSMUSG00000054885.4930578G10Rik 2.2418811 5.786615 23.55033 1.216883e-06
ENSMUSG00000024642.Tle4 -1.3714403 5.961362 23.46201 1.274045e-06
ENSMUSG00000029687.Ezh2 1.9692236 5.318652 23.33021 1.364401e-06
ENSMUSG00000020644.Id2 1.2580297 7.980765 23.32550 1.367743e-06
ENSMUSG00000038342.Mlxip 1.3913566 6.095656 23.26308 1.412862e-06
ENSMUSG00000034135.Sik3 0.9293732 9.024112 23.13704 1.508567e-06
ENSMUSG00000036356.Csgalnact1 -1.5269509 6.880043 23.05292 1.576032e-06
ENSMUSG00000063550.Nup98 1.2258099 6.557970 23.03179 1.593448e-06
ENSMUSG00000030352.Tspan9 -1.3880784 6.682200 22.74472 1.850115e-06
ENSMUSG00000031781.Ciapin1 1.5606234 6.095096 22.54241 2.055546e-06
ENSMUSG00000014353.Tmem87b 1.5542665 6.600712 22.48352 2.119538e-06
ENSMUSG00000039501.Znfx1 1.9721367 6.314003 22.42572 2.184295e-06
ENSMUSG00000018476.Kdm6b 1.7238883 6.047336 22.40431 2.208774e-06
ENSMUSG00000001768.Rin2 1.3382745 6.223052 22.28778 2.346956e-06
ENSMUSG00000032041.Tirap 2.8772656 4.847628 22.24080 2.405089e-06
ENSMUSG00000106261.Gm34086 -1.9958570 4.893558 22.14499 2.528149e-06
ENSMUSG00000020541.Tom1l1 -1.3641079 5.299135 22.05387 2.651045e-06
ENSMUSG00000055373.Fut9 -1.1419695 7.906818 22.01735 2.701963e-06
ENSMUSG00000022075.Rhobtb2 -1.7726388 6.093297 21.91457 2.850607e-06
ENSMUSG00000038774.Ascc3 1.2671002 6.974692 21.90736 2.861337e-06
ENSMUSG00000002332.Dhrs1 1.5040866 5.253558 21.89697 2.876880e-06
ENSMUSG00000031765.Mt1 2.2221471 10.886198 21.84394 2.957492e-06
ENSMUSG00000052534.Pbx1 -1.1421080 9.167517 21.79780 3.029475e-06
ENSMUSG00000039126.Prune2 1.3222138 6.130857 21.79290 3.037212e-06
ENSMUSG00000030739.Myh14 -1.3544011 5.840928 21.36121 3.803893e-06
ENSMUSG00000028521.Slc35d1 -1.7461425 5.345396 21.35806 3.810151e-06
ENSMUSG00000047146.Tet1 -2.0033704 5.539967 21.34359 3.839030e-06
ENSMUSG00000038156.Spon1 1.7221671 6.815071 21.28340 3.961465e-06
ENSMUSG00000063810.Alms1 -1.5559476 5.653685 21.06684 4.435367e-06
ENSMUSG00000071202.Ccdc78 -1.9813349 4.796803 20.94081 4.736955e-06
ENSMUSG00000036278.Macrod1 -1.3271950 7.852351 20.81411 5.060862e-06
FWER
ENSMUSG00000035673.Sbno2 3.153611e-56
ENSMUSG00000024998.Plce1 5.575959e-30
ENSMUSG00000022094.Slc39a14 7.573919e-30
ENSMUSG00000052560.Cpne8 3.431411e-29
ENSMUSG00000021091.Serpina3n 5.978948e-27
ENSMUSG00000021453.Gadd45g 2.845231e-25
ENSMUSG00000022146.Osmr 6.494579e-25
ENSMUSG00000018899.Irf1 1.155155e-23
ENSMUSG00000004040.Stat3 3.759971e-23
ENSMUSG00000034855.Cxcl10 5.819738e-21
ENSMUSG00000040033.Stat2 2.499533e-18
ENSMUSG00000054072.Iigp1 8.043097e-18
ENSMUSG00000105504.Gbp5 8.431032e-18
ENSMUSG00000054226.Tprkb 9.887603e-18
ENSMUSG00000053113.Socs3 1.327848e-17
ENSMUSG00000040430.Pitpnc1 6.924280e-17
ENSMUSG00000036644.Tbc1d9b 1.475256e-16
ENSMUSG00000026131.Dst 2.737791e-15
ENSMUSG00000036661.Dennd3 1.804301e-14
ENSMUSG00000026104.Stat1 2.514328e-14
ENSMUSG00000024501.Dpysl3 3.448990e-14
ENSMUSG00000070366.Plpp4 9.792418e-14
ENSMUSG00000020932.Gfap 3.113622e-13
ENSMUSG00000069874.Irgm2 8.405391e-13
ENSMUSG00000037876.Jmjd1c 2.361885e-12
ENSMUSG00000029561.Oasl2 4.357699e-12
ENSMUSG00000034640.Tiparp 4.762226e-12
ENSMUSG00000033720.Sfxn5 1.446194e-11
ENSMUSG00000051439.Cd14 1.701463e-11
ENSMUSG00000029380.Cxcl1 3.210599e-11
ENSMUSG00000035385.Ccl2 3.705709e-11
ENSMUSG00000026822.Lcn2 4.708985e-11
ENSMUSG00000030759.Far1 5.033449e-11
ENSMUSG00000055320.Tead1 7.990987e-11
ENSMUSG00000024339.Tap2 9.098184e-11
ENSMUSG00000039037.St6galnac5 1.062538e-10
ENSMUSG00000052837.Junb 1.708131e-10
ENSMUSG00000084984.Far1os 2.113895e-10
ENSMUSG00000026565.Pou2f1 3.170728e-10
ENSMUSG00000037458.Azin1 3.479363e-10
ENSMUSG00000037405.Icam1 8.038237e-10
ENSMUSG00000039701.Usp53 9.302015e-10
ENSMUSG00000020658.Efr3b 9.540566e-10
ENSMUSG00000019841.Rev3l 2.479040e-09
ENSMUSG00000021360.Gcnt2 3.048743e-09
ENSMUSG00000029798.Herc6 5.209107e-09
ENSMUSG00000022681.Ntan1 5.390469e-09
ENSMUSG00000013150.Gfod2 5.921915e-09
ENSMUSG00000029313.Aff1 1.145518e-08
ENSMUSG00000073411.H2-D1 1.494553e-08
ENSMUSG00000025492.Ifitm3 1.686658e-08
ENSMUSG00000046768.Rhoj 1.832795e-08
ENSMUSG00000027737.Slc7a11 2.035887e-08
ENSMUSG00000030890.Ilk 3.564414e-08
ENSMUSG00000026640.Plxna2 3.726484e-08
ENSMUSG00000015243.Abca1 5.943124e-08
ENSMUSG00000021466.Ptch1 6.006167e-08
ENSMUSG00000029722.Agfg2 8.682430e-08
ENSMUSG00000070056.Mfhas1 2.515010e-07
ENSMUSG00000025314.Ptprj 3.413192e-07
ENSMUSG00000020642.Rnf144a 3.886126e-07
ENSMUSG00000021025.Nfkbia 7.771650e-07
ENSMUSG00000020941.Map3k14 8.915592e-07
ENSMUSG00000031565.Fgfr1 9.604921e-07
ENSMUSG00000058740.Kcnt1 1.110092e-06
ENSMUSG00000021710.Nln 1.421016e-06
ENSMUSG00000025006.Sorbs1 1.680042e-06
ENSMUSG00000038301.Snx10 2.132473e-06
ENSMUSG00000040624.Plekhg1 2.452224e-06
ENSMUSG00000038894.Irs2 2.961059e-06
ENSMUSG00000020354.Sgcd 3.139360e-06
ENSMUSG00000087259.2610035D17Rik 3.369348e-06
ENSMUSG00000021684.Pde8b 3.961054e-06
ENSMUSG00000030199.Etv6 3.986376e-06
ENSMUSG00000037815.Ctnna1 9.440280e-06
ENSMUSG00000046718.Bst2 9.757392e-06
ENSMUSG00000044968.Napepld 9.844151e-06
ENSMUSG00000040037.Negr1 9.890978e-06
ENSMUSG00000065968.Ifitm7 1.393194e-05
ENSMUSG00000035376.Hacd2 2.223604e-05
ENSMUSG00000097300.Gm26835 2.423323e-05
ENSMUSG00000032741.Tpcn1 2.457282e-05
ENSMUSG00000020623.Map2k6 2.817869e-05
ENSMUSG00000005501.Usp40 3.165167e-05
ENSMUSG00000048807.Slc35e4 3.217125e-05
ENSMUSG00000063297.Luzp2 3.320242e-05
ENSMUSG00000021895.Arhgef3 3.337321e-05
ENSMUSG00000060548.Tnfrsf19 3.372696e-05
ENSMUSG00000068747.Sort1 4.218304e-05
ENSMUSG00000043259.Fam13c 4.975640e-05
ENSMUSG00000039954.Stk32a 5.038699e-05
ENSMUSG00000030660.Pik3c2a 5.060676e-05
ENSMUSG00000030077.Chl1 7.025532e-05
ENSMUSG00000037363.Letm2 8.159541e-05
ENSMUSG00000021814.Anxa7 8.178954e-05
ENSMUSG00000085245.Gm11713 1.061003e-04
ENSMUSG00000041712.Ubr7 1.289737e-04
ENSMUSG00000038371.Sbf2 1.334871e-04
ENSMUSG00000005686.Ampd3 1.431315e-04
ENSMUSG00000062151.Unc13c 1.460433e-04
ENSMUSG00000064210.Ano6 1.463933e-04
ENSMUSG00000047731.Wbp1l 1.615632e-04
ENSMUSG00000022912.Pros1 1.700387e-04
ENSMUSG00000003541.Ier3 1.814689e-04
ENSMUSG00000052942.Glis3 1.942752e-04
ENSMUSG00000027562.Car2 2.274969e-04
ENSMUSG00000070327.Rnf213 2.313104e-04
ENSMUSG00000031681.Smad1 2.643773e-04
ENSMUSG00000021709.Erbb2ip 2.786859e-04
ENSMUSG00000059866.Tnip2 4.041812e-04
ENSMUSG00000063972.Nr6a1 4.852066e-04
ENSMUSG00000020287.Mpg 4.888104e-04
ENSMUSG00000015850.Adamtsl4 4.927296e-04
ENSMUSG00000059991.Nptx2 5.247285e-04
ENSMUSG00000030088.Aldh1l1 5.811259e-04
ENSMUSG00000041642.Kif21b 6.414499e-04
ENSMUSG00000030257.Srgap3 6.834485e-04
ENSMUSG00000024539.Ptpn2 7.142988e-04
ENSMUSG00000032656.March3 7.900490e-04
ENSMUSG00000015501.Hivep2 1.029268e-03
ENSMUSG00000025545.Clybl 1.037170e-03
ENSMUSG00000078722.Gm12394 1.114545e-03
ENSMUSG00000022680.Pdxdc1 1.119994e-03
ENSMUSG00000038587.Akap12 1.188086e-03
ENSMUSG00000014592.Camta1 1.190037e-03
ENSMUSG00000056073.Grik2 1.445261e-03
ENSMUSG00000053641.Dennd4a 1.449793e-03
ENSMUSG00000074505.Fat3 1.516736e-03
ENSMUSG00000035133.Arhgap5 1.652273e-03
ENSMUSG00000020859.Spag9 1.698500e-03
ENSMUSG00000032000.Birc3 2.052426e-03
ENSMUSG00000024654.Asrgl1 2.068753e-03
ENSMUSG00000021133.Susd6 2.221419e-03
ENSMUSG00000054400.Cklf 2.637324e-03
ENSMUSG00000061410.Zcchc14 3.164725e-03
ENSMUSG00000035356.Nfkbiz 3.207832e-03
ENSMUSG00000020077.Srgn 3.279155e-03
ENSMUSG00000031762.Mt2 5.762853e-03
ENSMUSG00000020776.Fbf1 5.911389e-03
ENSMUSG00000053702.Nebl 6.166957e-03
ENSMUSG00000006301.Tmbim1 6.249296e-03
ENSMUSG00000004508.Gab2 6.293032e-03
ENSMUSG00000014599.Csf1 7.108336e-03
ENSMUSG00000020262.Adarb1 8.685940e-03
ENSMUSG00000050965.Prkca 9.122016e-03
ENSMUSG00000039047.Pigk 9.221828e-03
ENSMUSG00000030201.Lrp6 9.447817e-03
ENSMUSG00000008734.Gprc5b 9.555974e-03
ENSMUSG00000024603.Dctn4 1.053704e-02
ENSMUSG00000019889.Ptprk 1.075114e-02
ENSMUSG00000054885.4930578G10Rik 1.081444e-02
ENSMUSG00000024642.Tle4 1.132244e-02
ENSMUSG00000029687.Ezh2 1.212543e-02
ENSMUSG00000020644.Id2 1.215513e-02
ENSMUSG00000038342.Mlxip 1.255610e-02
ENSMUSG00000034135.Sik3 1.340664e-02
ENSMUSG00000036356.Csgalnact1 1.400620e-02
ENSMUSG00000063550.Nup98 1.416097e-02
ENSMUSG00000030352.Tspan9 1.644197e-02
ENSMUSG00000031781.Ciapin1 1.826764e-02
ENSMUSG00000014353.Tmem87b 1.883633e-02
ENSMUSG00000039501.Znfx1 1.941183e-02
ENSMUSG00000018476.Kdm6b 1.962938e-02
ENSMUSG00000001768.Rin2 2.085740e-02
ENSMUSG00000032041.Tirap 2.137403e-02
ENSMUSG00000106261.Gm34086 2.246766e-02
ENSMUSG00000020541.Tom1l1 2.355984e-02
ENSMUSG00000055373.Fut9 2.401234e-02
ENSMUSG00000022075.Rhobtb2 2.533334e-02
ENSMUSG00000038774.Ascc3 2.542870e-02
ENSMUSG00000002332.Dhrs1 2.556683e-02
ENSMUSG00000031765.Mt1 2.628324e-02
ENSMUSG00000052534.Pbx1 2.692294e-02
ENSMUSG00000039126.Prune2 2.699171e-02
ENSMUSG00000030739.Myh14 3.380520e-02
ENSMUSG00000028521.Slc35d1 3.386081e-02
ENSMUSG00000047146.Tet1 3.411746e-02
ENSMUSG00000038156.Spon1 3.520554e-02
ENSMUSG00000063810.Alms1 3.941711e-02
ENSMUSG00000071202.Ccdc78 4.209732e-02
ENSMUSG00000036278.Macrod1 4.497588e-02
For the global treatment, 182 genes were found significant, and thereby diferentially expressed.
y <- estimateDisp(y,design_interaction)
#To perform likelihood ratio tests:
fit <- glmFit(y,design_interaction)
lrt_excneuron <- glmLRT(fit,coef=10)
topTags(lrt_excneuron, n= Inf, p.value=0.05, adjust.method = "bonferroni")Coefficient: cell_typesexcNeuron:groupLPS
logFC logCPM LR PValue
ENSMUSG00000035673.Sbno2 -4.644181 6.843842 114.48407 1.020829e-26
ENSMUSG00000052560.Cpne8 -4.766726 7.032948 112.28937 3.087863e-26
ENSMUSG00000021453.Gadd45g -3.658702 6.415887 90.02486 2.351866e-21
ENSMUSG00000024501.Dpysl3 -4.572113 5.705460 64.38142 1.025206e-15
ENSMUSG00000052837.Junb -3.387817 6.600337 63.10365 1.961105e-15
ENSMUSG00000020642.Rnf144a -2.386393 6.376802 62.99013 2.077451e-15
ENSMUSG00000022094.Slc39a14 -3.415017 6.776529 62.69788 2.409753e-15
ENSMUSG00000054226.Tprkb 2.350912 6.062998 55.80375 8.007880e-14
ENSMUSG00000036644.Tbc1d9b -2.117009 6.703553 52.96294 3.399022e-13
ENSMUSG00000036661.Dennd3 -4.155245 5.756880 52.52731 4.243062e-13
ENSMUSG00000029798.Herc6 -2.998580 5.748384 51.72958 6.369585e-13
ENSMUSG00000024998.Plce1 -3.029461 6.953755 51.32869 7.812568e-13
ENSMUSG00000013150.Gfod2 -2.175110 6.170962 47.34460 5.954201e-12
ENSMUSG00000030077.Chl1 -2.259761 7.025015 45.21898 1.761893e-11
ENSMUSG00000037458.Azin1 -1.894169 6.868663 43.72237 3.784223e-11
ENSMUSG00000026131.Dst -1.720976 8.725271 42.06546 8.826875e-11
ENSMUSG00000030759.Far1 -2.037756 6.510621 41.66061 1.085745e-10
ENSMUSG00000033720.Sfxn5 1.832322 7.439145 41.34676 1.274823e-10
ENSMUSG00000019841.Rev3l -1.935051 7.221205 40.57736 1.889835e-10
ENSMUSG00000032741.Tpcn1 2.224587 5.674891 39.62277 3.080699e-10
ENSMUSG00000040430.Pitpnc1 2.085972 8.570368 39.41271 3.430574e-10
ENSMUSG00000059991.Nptx2 -3.184372 5.614456 37.79688 7.850706e-10
ENSMUSG00000040033.Stat2 -2.384176 6.508861 37.42467 9.501247e-10
ENSMUSG00000026640.Plxna2 -2.235415 7.249022 33.99157 5.535127e-09
ENSMUSG00000021710.Nln -2.221708 6.103864 33.96196 5.620019e-09
ENSMUSG00000021091.Serpina3n -3.100403 5.966274 33.68400 6.483171e-09
ENSMUSG00000070056.Mfhas1 -1.871170 6.092999 32.75573 1.044979e-08
ENSMUSG00000021360.Gcnt2 -3.106720 6.483870 32.63823 1.110095e-08
ENSMUSG00000037876.Jmjd1c -1.441650 8.605151 32.15655 1.422360e-08
ENSMUSG00000084984.Far1os -2.114793 5.650893 32.01919 1.526567e-08
ENSMUSG00000020623.Map2k6 2.337267 7.036746 30.76978 2.905276e-08
ENSMUSG00000030199.Etv6 -2.256642 7.544835 30.55343 3.247971e-08
ENSMUSG00000034640.Tiparp -2.374001 7.481458 30.45156 3.423082e-08
ENSMUSG00000020658.Efr3b -1.753566 7.946889 29.73163 4.961859e-08
ENSMUSG00000040037.Negr1 1.747657 9.002609 29.05726 7.027034e-08
ENSMUSG00000047146.Tet1 2.675047 5.539967 29.00130 7.232970e-08
ENSMUSG00000044968.Napepld -2.973072 6.074994 28.81294 7.971690e-08
ENSMUSG00000026565.Pou2f1 1.666564 6.486639 28.14227 1.127172e-07
ENSMUSG00000020941.Map3k14 -2.258441 6.483543 27.31991 1.724268e-07
ENSMUSG00000030172.Erc1 -1.208503 7.028553 26.07575 3.282810e-07
ENSMUSG00000038894.Irs2 -2.852711 5.023270 26.01427 3.389028e-07
ENSMUSG00000021895.Arhgef3 -2.377557 6.893204 25.61091 4.176711e-07
ENSMUSG00000022146.Osmr -5.365793 5.942096 24.81477 6.311187e-07
ENSMUSG00000022912.Pros1 -2.467179 5.334382 24.47298 7.535923e-07
ENSMUSG00000017561.Crlf3 1.691954 5.963286 24.33820 8.082035e-07
ENSMUSG00000048807.Slc35e4 -2.136001 5.670424 23.91694 1.005830e-06
ENSMUSG00000024539.Ptpn2 -1.994284 5.995932 23.91489 1.006901e-06
ENSMUSG00000027827.Kcnab1 -1.775966 8.261847 23.34777 1.351999e-06
ENSMUSG00000022681.Ntan1 -1.421020 8.057143 23.29010 1.393151e-06
ENSMUSG00000020644.Id2 -1.735116 7.980765 23.23885 1.430772e-06
ENSMUSG00000039037.St6galnac5 1.750347 7.893553 22.80740 1.790753e-06
ENSMUSG00000020262.Adarb1 -1.930629 6.585359 22.71203 1.881859e-06
ENSMUSG00000025545.Clybl 1.555246 6.435785 22.68215 1.911349e-06
ENSMUSG00000047731.Wbp1l -1.895369 6.071261 22.38957 2.225791e-06
ENSMUSG00000038301.Snx10 -1.628804 6.992985 22.17470 2.489331e-06
ENSMUSG00000029722.Agfg2 -1.667418 6.528641 22.13102 2.546616e-06
ENSMUSG00000043259.Fam13c 2.084434 6.626677 21.87352 2.912245e-06
ENSMUSG00000026104.Stat1 -2.324038 5.961661 21.35592 3.814412e-06
ENSMUSG00000025314.Ptprj -1.807010 8.583821 20.81824 5.049964e-06
FWER
ENSMUSG00000035673.Sbno2 9.072111e-23
ENSMUSG00000052560.Cpne8 2.744184e-22
ENSMUSG00000021453.Gadd45g 2.090104e-17
ENSMUSG00000024501.Dpysl3 9.111001e-12
ENSMUSG00000052837.Junb 1.742834e-11
ENSMUSG00000020642.Rnf144a 1.846230e-11
ENSMUSG00000022094.Slc39a14 2.141548e-11
ENSMUSG00000054226.Tprkb 7.116603e-10
ENSMUSG00000036644.Tbc1d9b 3.020711e-09
ENSMUSG00000036661.Dennd3 3.770809e-09
ENSMUSG00000029798.Herc6 5.660650e-09
ENSMUSG00000024998.Plce1 6.943029e-09
ENSMUSG00000013150.Gfod2 5.291499e-08
ENSMUSG00000030077.Chl1 1.565794e-07
ENSMUSG00000037458.Azin1 3.363039e-07
ENSMUSG00000026131.Dst 7.844444e-07
ENSMUSG00000030759.Far1 9.649018e-07
ENSMUSG00000033720.Sfxn5 1.132935e-06
ENSMUSG00000019841.Rev3l 1.679497e-06
ENSMUSG00000032741.Tpcn1 2.737817e-06
ENSMUSG00000040430.Pitpnc1 3.048751e-06
ENSMUSG00000059991.Nptx2 6.976923e-06
ENSMUSG00000040033.Stat2 8.443758e-06
ENSMUSG00000026640.Plxna2 4.919067e-05
ENSMUSG00000021710.Nln 4.994511e-05
ENSMUSG00000021091.Serpina3n 5.761594e-05
ENSMUSG00000070056.Mfhas1 9.286724e-05
ENSMUSG00000021360.Gcnt2 9.865415e-05
ENSMUSG00000037876.Jmjd1c 1.264051e-04
ENSMUSG00000084984.Far1os 1.356660e-04
ENSMUSG00000020623.Map2k6 2.581919e-04
ENSMUSG00000030199.Etv6 2.886472e-04
ENSMUSG00000034640.Tiparp 3.042093e-04
ENSMUSG00000020658.Efr3b 4.409604e-04
ENSMUSG00000040037.Negr1 6.244925e-04
ENSMUSG00000047146.Tet1 6.427940e-04
ENSMUSG00000044968.Napepld 7.084441e-04
ENSMUSG00000026565.Pou2f1 1.001717e-03
ENSMUSG00000020941.Map3k14 1.532357e-03
ENSMUSG00000030172.Erc1 2.917433e-03
ENSMUSG00000038894.Irs2 3.011829e-03
ENSMUSG00000021895.Arhgef3 3.711843e-03
ENSMUSG00000022146.Osmr 5.608752e-03
ENSMUSG00000022912.Pros1 6.697174e-03
ENSMUSG00000017561.Crlf3 7.182505e-03
ENSMUSG00000048807.Slc35e4 8.938814e-03
ENSMUSG00000024539.Ptpn2 8.948330e-03
ENSMUSG00000027827.Kcnab1 1.201522e-02
ENSMUSG00000022681.Ntan1 1.238094e-02
ENSMUSG00000020644.Id2 1.271527e-02
ENSMUSG00000039037.St6galnac5 1.591442e-02
ENSMUSG00000020262.Adarb1 1.672408e-02
ENSMUSG00000025545.Clybl 1.698616e-02
ENSMUSG00000047731.Wbp1l 1.978061e-02
ENSMUSG00000038301.Snx10 2.212269e-02
ENSMUSG00000029722.Agfg2 2.263178e-02
ENSMUSG00000043259.Fam13c 2.588112e-02
ENSMUSG00000026104.Stat1 3.389868e-02
ENSMUSG00000025314.Ptprj 4.487903e-02
Based on the edgeR DE analysis, these are the DE genes with p-value < 0.05 after Bonferroni correction was applied.
4. Compare these sets of genes with the ones found in the first part (#1-3). Do you find more, or less genes? To what extent do the sets overlap between the two analyses? How do you interpret the differences? Compare to the genes found in the first part, we find 59 DE compared to the 31 found with the muscat approach. We can have a look at the overlap:
DE_only_excNeuron_muscat <- DE_only_excNeuron
allDEgenes_excNeuron <- data.frame(DE_genes = unique(union(names_DE_excNeuron_edgeR, DE_only_excNeuron_muscat)))
allDEgenes_excNeuron$edgeR <- allDEgenes_excNeuron$DE_genes %in% names_DE_excNeuron_edgeR
allDEgenes_excNeuron$muscat <- allDEgenes_excNeuron$DE_genes %in% DE_only_excNeuron_muscat
vennDiagram(allDEgenes_excNeuron[-1])No genes overlap. This result is not what we expected, as we would expect most DE genes to be similar. We make a scatter plot to observe the logFC of the gene expression in both methods.
logFC_excNeu_muscat <- as.data.frame(rowMeans(assays(pb2)$log2FC[,21:24]))
table_excNeu_edgeR <- topTags(lrt_excneuron, n= Inf)$table
logFC_excNeu_edgeR <- data.frame(logFC = table_excNeu_edgeR$logFC)
logFC <- data.frame(edgeR = logFC_excNeu_edgeR$logFC, muscat = logFC_excNeu_muscat$`rowMeans(assays(pb2)$log2FC[, 21:24])`)
ggplot(logFC, aes(x = edgeR, y = muscat)) +
geom_point() +
labs(title = "Scatter Plot of Log-Fold Changes",
x = "EdgeR",
y = "Muscat") +
theme_minimal() +
geom_abline(intercept = 0, slope = 1, color = "red", linetype = "dashed")If logFC were the same, or their expression was at least similarly predicted, we would observe all points closer to the red line. However, this is not the case. This indicates above results are not comparable as edgeR and muscat is not predicting similar infering similar expression values for the genes.
For a refresher on the use of GLMs, see for instance the examples in the edgeR::edgeRUsersGuide() (chapter 3), or the limma::limmaUsersGuide() (chapter 9).